<!DOCTYPE html>
<html lang="en">
  <head>
    <title>Classes  Reference</title>
    <link rel="stylesheet" type="text/css" href="css/jazzy.css" />
    <link rel="stylesheet" type="text/css" href="css/highlight.css" />
    <meta charset='utf-8'>
    <script src="js/jquery.min.js" defer></script>
    <script src="js/jazzy.js" defer></script>
    
  </head>
  <body>
    <a name="//apple_ref/swift/Section/Classes" class="dashAnchor"></a>
    <a title="Classes  Reference"></a>
    <header>
      <div class="content-wrapper">
        <p><a href="index.html">ZcashLightClientKit Docs</a> (71% documented)</p>
      </div>
    </header>
    <div class="content-wrapper">
      <p id="breadcrumbs">
        <a href="index.html">ZcashLightClientKit Reference</a>
        <img id="carat" src="img/carat.png" />
        Classes  Reference
      </p>
    </div>
    <div class="content-wrapper">
      <nav class="sidebar">
        <ul class="nav-groups">
          <li class="nav-group-name">
            <a href="Classes.html">Classes</a>
            <ul class="nav-group-tasks">
              <li class="nav-group-task">
                <a href="Classes/CompactBlockProcessor.html">CompactBlockProcessor</a>
              </li>
              <li class="nav-group-task">
                <a href="Classes/CompactBlockProcessor/Configuration.html">– Configuration</a>
              </li>
              <li class="nav-group-task">
                <a href="Classes/CompactBlockProcessor/State.html">– State</a>
              </li>
              <li class="nav-group-task">
                <a href="Classes/Initializer.html">Initializer</a>
              </li>
              <li class="nav-group-task">
                <a href="Classes/LightWalletGRPCService.html">LightWalletGRPCService</a>
              </li>
              <li class="nav-group-task">
                <a href="Classes/SDKSynchronizer.html">SDKSynchronizer</a>
              </li>
              <li class="nav-group-task">
                <a href="Classes/SDKSynchronizer/NotificationKeys.html">– NotificationKeys</a>
              </li>
              <li class="nav-group-task">
                <a href="Classes/ZcashSDK.html">ZcashSDK</a>
              </li>
            </ul>
          </li>
          <li class="nav-group-name">
            <a href="Enums.html">Enumerations</a>
            <ul class="nav-group-tasks">
              <li class="nav-group-task">
                <a href="Enums/CompactBlockProcessorError.html">CompactBlockProcessorError</a>
              </li>
              <li class="nav-group-task">
                <a href="Enums/InitializerError.html">InitializerError</a>
              </li>
              <li class="nav-group-task">
                <a href="Enums/LightWalletServiceError.html">LightWalletServiceError</a>
              </li>
              <li class="nav-group-task">
                <a href="Enums/ResourceProviderError.html">ResourceProviderError</a>
              </li>
              <li class="nav-group-task">
                <a href="Enums/RustWeldingError.html">RustWeldingError</a>
              </li>
              <li class="nav-group-task">
                <a href="Enums/Status.html">Status</a>
              </li>
              <li class="nav-group-task">
                <a href="Enums/SynchronizerError.html">SynchronizerError</a>
              </li>
              <li class="nav-group-task">
                <a href="Enums/TransactionEncoderError.html">TransactionEncoderError</a>
              </li>
              <li class="nav-group-task">
                <a href="Enums/TransactionKind.html">TransactionKind</a>
              </li>
            </ul>
          </li>
          <li class="nav-group-name">
            <a href="Extensions.html">Extensions</a>
            <ul class="nav-group-tasks">
              <li class="nav-group-task">
                <a href="Extensions/Array.html">Array</a>
              </li>
              <li class="nav-group-task">
                <a href="Extensions/BlockHeight.html">BlockHeight</a>
              </li>
              <li class="nav-group-task">
                <a href="Extensions/Collection.html">Collection</a>
              </li>
              <li class="nav-group-task">
                <a href="Extensions/CompactBlockRange.html">CompactBlockRange</a>
              </li>
              <li class="nav-group-task">
                <a href="Extensions/Data.html">Data</a>
              </li>
              <li class="nav-group-task">
                <a href="Extensions/Data/HexEncodingOptions.html">– HexEncodingOptions</a>
              </li>
              <li class="nav-group-task">
                <a href="Extensions/Notification.html">Notification</a>
              </li>
              <li class="nav-group-task">
                <a href="Extensions/Notification/Name.html">– Name</a>
              </li>
              <li class="nav-group-task">
                <a href="Extensions/String.html">String</a>
              </li>
            </ul>
          </li>
          <li class="nav-group-name">
            <a href="Protocols.html">Protocols</a>
            <ul class="nav-group-tasks">
              <li class="nav-group-task">
                <a href="Protocols/AbstractTransaction.html">AbstractTransaction</a>
              </li>
              <li class="nav-group-task">
                <a href="Protocols/CompactBlockDownloading.html">CompactBlockDownloading</a>
              </li>
              <li class="nav-group-task">
                <a href="Protocols/ConfirmedTransactionEntity.html">ConfirmedTransactionEntity</a>
              </li>
              <li class="nav-group-task">
                <a href="Protocols/LightWalletService.html">LightWalletService</a>
              </li>
              <li class="nav-group-task">
                <a href="Protocols/LightWalletServiceResponse.html">LightWalletServiceResponse</a>
              </li>
              <li class="nav-group-task">
                <a href="Protocols/Logger.html">Logger</a>
              </li>
              <li class="nav-group-task">
                <a href="Protocols/MinedTransactionEntity.html">MinedTransactionEntity</a>
              </li>
              <li class="nav-group-task">
                <a href="Protocols/PaginatedTransactionRepository.html">PaginatedTransactionRepository</a>
              </li>
              <li class="nav-group-task">
                <a href="Protocols/PendingTransactionEntity.html">PendingTransactionEntity</a>
              </li>
              <li class="nav-group-task">
                <a href="Protocols/RawIdentifiable.html">RawIdentifiable</a>
              </li>
              <li class="nav-group-task">
                <a href="Protocols/ResourceProvider.html">ResourceProvider</a>
              </li>
              <li class="nav-group-task">
                <a href="Protocols/SeedProvider.html">SeedProvider</a>
              </li>
              <li class="nav-group-task">
                <a href="Protocols/SignedTransactionEntity.html">SignedTransactionEntity</a>
              </li>
              <li class="nav-group-task">
                <a href="Protocols/Synchronizer.html">Synchronizer</a>
              </li>
              <li class="nav-group-task">
                <a href="Protocols/TransactionEntity.html">TransactionEntity</a>
              </li>
              <li class="nav-group-task">
                <a href="Protocols/ZcashRustBackendWelding.html">ZcashRustBackendWelding</a>
              </li>
            </ul>
          </li>
          <li class="nav-group-name">
            <a href="Structs.html">Structures</a>
            <ul class="nav-group-tasks">
              <li class="nav-group-task">
                <a href="Structs/CompactBlockProcessorNotificationKey.html">CompactBlockProcessorNotificationKey</a>
              </li>
              <li class="nav-group-task">
                <a href="Structs/DefaultResourceProvider.html">DefaultResourceProvider</a>
              </li>
              <li class="nav-group-task">
                <a href="Structs/LightWalletEndpoint.html">LightWalletEndpoint</a>
              </li>
              <li class="nav-group-task">
                <a href="Structs/WalletBirthday.html">WalletBirthday</a>
              </li>
              <li class="nav-group-task">
                <a href="Structs/ZcashCompactBlock.html">ZcashCompactBlock</a>
              </li>
              <li class="nav-group-task">
                <a href="Structs.html#/s:19ZcashLightClientKit0A27RustBackendWeldingConstantsV">ZcashRustBackendWeldingConstants</a>
              </li>
            </ul>
          </li>
          <li class="nav-group-name">
            <a href="Typealiases.html">Type Aliases</a>
            <ul class="nav-group-tasks">
              <li class="nav-group-task">
                <a href="Typealiases.html#/s:19ZcashLightClientKit11BlockHeighta">BlockHeight</a>
              </li>
              <li class="nav-group-task">
                <a href="Typealiases.html#/s:19ZcashLightClientKit17CompactBlockRangea">CompactBlockRange</a>
              </li>
            </ul>
          </li>
        </ul>
      </nav>
      <article class="main-content">
        <section>
          <section class="section">
            <h1>Classes</h1>
            <p>The following classes are available globally.</p>

          </section>
          <section class="section task-group-section">
            <div class="task-group">
              <ul>
                <li class="item">
                  <div>
                    <code>
                    <a name="/s:19ZcashLightClientKit21CompactBlockProcessorC"></a>
                    <a name="//apple_ref/swift/Class/CompactBlockProcessor" class="dashAnchor"></a>
                    <a class="token" href="#/s:19ZcashLightClientKit21CompactBlockProcessorC">CompactBlockProcessor</a>
                    </code>
                  </div>
                  <div class="height-container">
                    <div class="pointer-container"></div>
                    <section class="section">
                      <div class="pointer"></div>
                      <div class="abstract">
                        <p>The compact block processor is in charge of orchestrating the download and caching of compact blocks from a LightWalletEndpoint
when started the processor downloads does a download - validate - scan cycle until it reaches latest height on the blockchain.</p>

                        <a href="Classes/CompactBlockProcessor.html" class="slightly-smaller">See more</a>
                      </div>
                      <div class="declaration">
                        <h4>Declaration</h4>
                        <div class="language">
                          <p class="aside-title">Swift</p>
                          <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">class</span> <span class="kt">CompactBlockProcessor</span></code></pre>

                        </div>
                      </div>
                    </section>
                  </div>
                </li>
                <li class="item">
                  <div>
                    <code>
                    <a name="/s:19ZcashLightClientKit0A3SDKC"></a>
                    <a name="//apple_ref/swift/Class/ZcashSDK" class="dashAnchor"></a>
                    <a class="token" href="#/s:19ZcashLightClientKit0A3SDKC">ZcashSDK</a>
                    </code>
                  </div>
                  <div class="height-container">
                    <div class="pointer-container"></div>
                    <section class="section">
                      <div class="pointer"></div>
                      <div class="abstract">
                        <p>Wrapper for all the constant values in the SDK. It is important that these values stay fixed for
all users of the SDK. Otherwise, if individual wallet makers are using different values, it
becomes easier to reduce privacy by segmenting the anonymity set of users, particularly as it
relates to network requests.</p>

                        <a href="Classes/ZcashSDK.html" class="slightly-smaller">See more</a>
                      </div>
                      <div class="declaration">
                        <h4>Declaration</h4>
                        <div class="language">
                          <p class="aside-title">Swift</p>
                          <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">class</span> <span class="kt">ZcashSDK</span></code></pre>

                        </div>
                      </div>
                    </section>
                  </div>
                </li>
                <li class="item">
                  <div>
                    <code>
                    <a name="/s:19ZcashLightClientKit11InitializerC"></a>
                    <a name="//apple_ref/swift/Class/Initializer" class="dashAnchor"></a>
                    <a class="token" href="#/s:19ZcashLightClientKit11InitializerC">Initializer</a>
                    </code>
                  </div>
                  <div class="height-container">
                    <div class="pointer-container"></div>
                    <section class="section">
                      <div class="pointer"></div>
                      <div class="abstract">
                        <p>Wrapper for all the Rust backend functionality that does not involve processing blocks. This
class initializes the Rust backend and the supporting data required to exercise those abilities.
The [cash.z.wallet.sdk.block.CompactBlockProcessor] handles all the remaining Rust backend
functionality, related to processing blocks.</p>

                        <a href="Classes/Initializer.html" class="slightly-smaller">See more</a>
                      </div>
                      <div class="declaration">
                        <h4>Declaration</h4>
                        <div class="language">
                          <p class="aside-title">Swift</p>
                          <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">class</span> <span class="kt">Initializer</span></code></pre>

                        </div>
                      </div>
                    </section>
                  </div>
                </li>
                <li class="item">
                  <div>
                    <code>
                    <a name="/s:19ZcashLightClientKit0B17WalletGRPCServiceC"></a>
                    <a name="//apple_ref/swift/Class/LightWalletGRPCService" class="dashAnchor"></a>
                    <a class="token" href="#/s:19ZcashLightClientKit0B17WalletGRPCServiceC">LightWalletGRPCService</a>
                    </code>
                  </div>
                  <div class="height-container">
                    <div class="pointer-container"></div>
                    <section class="section">
                      <div class="pointer"></div>
                      <div class="abstract">
                        <p>Swift GRPC implementation of Lightwalletd service</p>

                        <a href="Classes/LightWalletGRPCService.html" class="slightly-smaller">See more</a>
                      </div>
                      <div class="declaration">
                        <h4>Declaration</h4>
                        <div class="language">
                          <p class="aside-title">Swift</p>
                          <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">class</span> <span class="kt">LightWalletGRPCService</span></code></pre>
<pre class="highlight swift"><code><span class="kd">extension</span> <span class="kt">LightWalletGRPCService</span><span class="p">:</span> <span class="kt"><a href="Protocols/LightWalletService.html">LightWalletService</a></span></code></pre>

                        </div>
                      </div>
                    </section>
                  </div>
                </li>
                <li class="item">
                  <div>
                    <code>
                    <a name="/s:19ZcashLightClientKit15SDKSynchronizerC"></a>
                    <a name="//apple_ref/swift/Class/SDKSynchronizer" class="dashAnchor"></a>
                    <a class="token" href="#/s:19ZcashLightClientKit15SDKSynchronizerC">SDKSynchronizer</a>
                    </code>
                  </div>
                  <div class="height-container">
                    <div class="pointer-container"></div>
                    <section class="section">
                      <div class="pointer"></div>
                      <div class="abstract">
                        <p>Synchronizer implementation for UIKit and iOS 12+</p>

                        <a href="Classes/SDKSynchronizer.html" class="slightly-smaller">See more</a>
                      </div>
                      <div class="declaration">
                        <h4>Declaration</h4>
                        <div class="language">
                          <p class="aside-title">Swift</p>
                          <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">class</span> <span class="kt">SDKSynchronizer</span> <span class="p">:</span> <span class="kt"><a href="Protocols/Synchronizer.html">Synchronizer</a></span></code></pre>

                        </div>
                      </div>
                    </section>
                  </div>
                </li>
              </ul>
            </div>
          </section>
        </section>
        <section id="footer">
          <p>&copy; 2020 <a class="link" href="https://github.com/zcash/ZcashLightClientKit" target="_blank" rel="external">Francisco Gindre and Jack Grigg</a>. All rights reserved. (Last updated: 2020-04-06)</p>
          <p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.13.1</a>, a <a class="link" href="https://realm.io" target="_blank" rel="external">Realm</a> project.</p>
        </section>
      </article>
    </div>
  </body>
</div>
</html>
